A voltage keeper refers to a circuit that keeps a node at a particular logical value, such as a high logical value, in a memory macro application, for example. On one hand, the voltage keeper is designed to keep the node at the high logical value while other circuits in the memory macro tend to pull the node away from the high logical value. In such a situation, the voltage keeper is stronger than the other circuits, otherwise the node will not be kept at the high logical value. On the other hand, when the node changes to a low logical value, the voltage keeper is weaker than the other circuits to allow the node to transition to such a low logical value. In some existing approaches, to cover manufacturing process variations, multiple voltage keepers are implemented in different sections of the memory macro. Further, a transistor length of transistors implemented as the voltage keeper is relatively large, which affects polysilicon pattern accuracy of the memory array in the memory macro and of other transistors close to the area of the voltage keeper. A large die area of the voltage keeper also reduces efficiency of the memory cells.
Like reference symbols in the various drawings indicate like elements.